//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by FernFlower decompiler)
//

package com.hustcad.plm.rpm.model.vo.change;

import com.alibaba.fastjson.JSONObject;
import io.swagger.annotations.ApiModel;
import java.util.List;
import java.util.Map;

import io.swagger.annotations.ApiModelProperty;
import org.hibernate.validator.constraints.Length;
import org.springframework.context.annotation.Primary;

@ApiModel(
    value = "创建计划变更VO",
    description = ""
)
@Primary
public class PlanChangeInfoVO {
    private String changeNo;
    private Boolean isSubmit;
    private String planoid;
    private String planotype;
    private String refoid;
    private String refotype;
    private String projectoid;
    private String projectotype;
    private @Length(
    max = 1000,
    message = "变更原因最大长度为1000"
) String description;
    private String changeInfoOid;
    private String status;
    private String creatorOid;
    private PlanUpdateVO content;
    private List<ActiveUpdateVO> activeList;
    private JSONObject planActiveDTO;
    private String changeType;
    private String securitylabels;

    @ApiModelProperty("iba属性")
    private Map<String, List<String>> ibaAttribute;

    public PlanChangeInfoVO() {
    }

    public Map<String, List<String>> getIbaAttribute() {
        return ibaAttribute;
    }

    public void setIbaAttribute(Map<String, List<String>> ibaAttribute) {
        this.ibaAttribute = ibaAttribute;
    }

    public String getChangeNo() {
        return this.changeNo;
    }

    public Boolean getIsSubmit() {
        return this.isSubmit;
    }

    public String getPlanoid() {
        return this.planoid;
    }

    public String getPlanotype() {
        return this.planotype;
    }

    public String getRefoid() {
        return this.refoid;
    }

    public String getRefotype() {
        return this.refotype;
    }

    public String getProjectoid() {
        return this.projectoid;
    }

    public String getProjectotype() {
        return this.projectotype;
    }

    public String getDescription() {
        return this.description;
    }

    public String getChangeInfoOid() {
        return this.changeInfoOid;
    }

    public String getStatus() {
        return this.status;
    }

    public String getCreatorOid() {
        return this.creatorOid;
    }

    public PlanUpdateVO getContent() {
        return this.content;
    }

    public List<ActiveUpdateVO> getActiveList() {
        return this.activeList;
    }

    public JSONObject getPlanActiveDTO() {
        return this.planActiveDTO;
    }

    public String getChangeType() {
        return this.changeType;
    }

    public String getSecuritylabels() {
        return this.securitylabels;
    }

    public void setChangeNo(final String changeNo) {
        this.changeNo = changeNo;
    }

    public void setIsSubmit(final Boolean isSubmit) {
        this.isSubmit = isSubmit;
    }

    public void setPlanoid(final String planoid) {
        this.planoid = planoid;
    }

    public void setPlanotype(final String planotype) {
        this.planotype = planotype;
    }

    public void setRefoid(final String refoid) {
        this.refoid = refoid;
    }

    public void setRefotype(final String refotype) {
        this.refotype = refotype;
    }

    public void setProjectoid(final String projectoid) {
        this.projectoid = projectoid;
    }

    public void setProjectotype(final String projectotype) {
        this.projectotype = projectotype;
    }

    public void setDescription(final String description) {
        this.description = description;
    }

    public void setChangeInfoOid(final String changeInfoOid) {
        this.changeInfoOid = changeInfoOid;
    }

    public void setStatus(final String status) {
        this.status = status;
    }

    public void setCreatorOid(final String creatorOid) {
        this.creatorOid = creatorOid;
    }

    public void setContent(final PlanUpdateVO content) {
        this.content = content;
    }

    public void setActiveList(final List<ActiveUpdateVO> activeList) {
        this.activeList = activeList;
    }

    public void setPlanActiveDTO(final JSONObject planActiveDTO) {
        this.planActiveDTO = planActiveDTO;
    }

    public void setChangeType(final String changeType) {
        this.changeType = changeType;
    }

    public void setSecuritylabels(final String securitylabels) {
        this.securitylabels = securitylabels;
    }

    public boolean equals(final Object o) {
        if (o == this) {
            return true;
        } else if (!(o instanceof PlanChangeInfoVO)) {
            return false;
        } else {
            PlanChangeInfoVO other = (PlanChangeInfoVO)o;
            if (!other.canEqual(this)) {
                return false;
            } else {
                label215: {
                    Object this$isSubmit = this.getIsSubmit();
                    Object other$isSubmit = other.getIsSubmit();
                    if (this$isSubmit == null) {
                        if (other$isSubmit == null) {
                            break label215;
                        }
                    } else if (this$isSubmit.equals(other$isSubmit)) {
                        break label215;
                    }

                    return false;
                }

                Object this$changeNo = this.getChangeNo();
                Object other$changeNo = other.getChangeNo();
                if (this$changeNo == null) {
                    if (other$changeNo != null) {
                        return false;
                    }
                } else if (!this$changeNo.equals(other$changeNo)) {
                    return false;
                }

                label201: {
                    Object this$planoid = this.getPlanoid();
                    Object other$planoid = other.getPlanoid();
                    if (this$planoid == null) {
                        if (other$planoid == null) {
                            break label201;
                        }
                    } else if (this$planoid.equals(other$planoid)) {
                        break label201;
                    }

                    return false;
                }

                Object this$planotype = this.getPlanotype();
                Object other$planotype = other.getPlanotype();
                if (this$planotype == null) {
                    if (other$planotype != null) {
                        return false;
                    }
                } else if (!this$planotype.equals(other$planotype)) {
                    return false;
                }

                label187: {
                    Object this$refoid = this.getRefoid();
                    Object other$refoid = other.getRefoid();
                    if (this$refoid == null) {
                        if (other$refoid == null) {
                            break label187;
                        }
                    } else if (this$refoid.equals(other$refoid)) {
                        break label187;
                    }

                    return false;
                }

                Object this$refotype = this.getRefotype();
                Object other$refotype = other.getRefotype();
                if (this$refotype == null) {
                    if (other$refotype != null) {
                        return false;
                    }
                } else if (!this$refotype.equals(other$refotype)) {
                    return false;
                }

                label173: {
                    Object this$projectoid = this.getProjectoid();
                    Object other$projectoid = other.getProjectoid();
                    if (this$projectoid == null) {
                        if (other$projectoid == null) {
                            break label173;
                        }
                    } else if (this$projectoid.equals(other$projectoid)) {
                        break label173;
                    }

                    return false;
                }

                label166: {
                    Object this$projectotype = this.getProjectotype();
                    Object other$projectotype = other.getProjectotype();
                    if (this$projectotype == null) {
                        if (other$projectotype == null) {
                            break label166;
                        }
                    } else if (this$projectotype.equals(other$projectotype)) {
                        break label166;
                    }

                    return false;
                }

                Object this$description = this.getDescription();
                Object other$description = other.getDescription();
                if (this$description == null) {
                    if (other$description != null) {
                        return false;
                    }
                } else if (!this$description.equals(other$description)) {
                    return false;
                }

                label152: {
                    Object this$changeInfoOid = this.getChangeInfoOid();
                    Object other$changeInfoOid = other.getChangeInfoOid();
                    if (this$changeInfoOid == null) {
                        if (other$changeInfoOid == null) {
                            break label152;
                        }
                    } else if (this$changeInfoOid.equals(other$changeInfoOid)) {
                        break label152;
                    }

                    return false;
                }

                label145: {
                    Object this$status = this.getStatus();
                    Object other$status = other.getStatus();
                    if (this$status == null) {
                        if (other$status == null) {
                            break label145;
                        }
                    } else if (this$status.equals(other$status)) {
                        break label145;
                    }

                    return false;
                }

                Object this$creatorOid = this.getCreatorOid();
                Object other$creatorOid = other.getCreatorOid();
                if (this$creatorOid == null) {
                    if (other$creatorOid != null) {
                        return false;
                    }
                } else if (!this$creatorOid.equals(other$creatorOid)) {
                    return false;
                }

                Object this$content = this.getContent();
                Object other$content = other.getContent();
                if (this$content == null) {
                    if (other$content != null) {
                        return false;
                    }
                } else if (!this$content.equals(other$content)) {
                    return false;
                }

                label124: {
                    Object this$activeList = this.getActiveList();
                    Object other$activeList = other.getActiveList();
                    if (this$activeList == null) {
                        if (other$activeList == null) {
                            break label124;
                        }
                    } else if (this$activeList.equals(other$activeList)) {
                        break label124;
                    }

                    return false;
                }

                Object this$planActiveDTO = this.getPlanActiveDTO();
                Object other$planActiveDTO = other.getPlanActiveDTO();
                if (this$planActiveDTO == null) {
                    if (other$planActiveDTO != null) {
                        return false;
                    }
                } else if (!this$planActiveDTO.equals(other$planActiveDTO)) {
                    return false;
                }

                Object this$changeType = this.getChangeType();
                Object other$changeType = other.getChangeType();
                if (this$changeType == null) {
                    if (other$changeType != null) {
                        return false;
                    }
                } else if (!this$changeType.equals(other$changeType)) {
                    return false;
                }

                Object this$securitylabels = this.getSecuritylabels();
                Object other$securitylabels = other.getSecuritylabels();
                if (this$securitylabels == null) {
                    if (other$securitylabels != null) {
                        return false;
                    }
                } else if (!this$securitylabels.equals(other$securitylabels)) {
                    return false;
                }

                return true;
            }
        }
    }

    protected boolean canEqual(final Object other) {
        return other instanceof PlanChangeInfoVO;
    }

    public int hashCode() {
        int result = 1;
        Object $isSubmit = this.getIsSubmit();
        result = result * 59 + ($isSubmit == null ? 43 : $isSubmit.hashCode());
        Object $changeNo = this.getChangeNo();
        result = result * 59 + ($changeNo == null ? 43 : $changeNo.hashCode());
        Object $planoid = this.getPlanoid();
        result = result * 59 + ($planoid == null ? 43 : $planoid.hashCode());
        Object $planotype = this.getPlanotype();
        result = result * 59 + ($planotype == null ? 43 : $planotype.hashCode());
        Object $refoid = this.getRefoid();
        result = result * 59 + ($refoid == null ? 43 : $refoid.hashCode());
        Object $refotype = this.getRefotype();
        result = result * 59 + ($refotype == null ? 43 : $refotype.hashCode());
        Object $projectoid = this.getProjectoid();
        result = result * 59 + ($projectoid == null ? 43 : $projectoid.hashCode());
        Object $projectotype = this.getProjectotype();
        result = result * 59 + ($projectotype == null ? 43 : $projectotype.hashCode());
        Object $description = this.getDescription();
        result = result * 59 + ($description == null ? 43 : $description.hashCode());
        Object $changeInfoOid = this.getChangeInfoOid();
        result = result * 59 + ($changeInfoOid == null ? 43 : $changeInfoOid.hashCode());
        Object $status = this.getStatus();
        result = result * 59 + ($status == null ? 43 : $status.hashCode());
        Object $creatorOid = this.getCreatorOid();
        result = result * 59 + ($creatorOid == null ? 43 : $creatorOid.hashCode());
        Object $content = this.getContent();
        result = result * 59 + ($content == null ? 43 : $content.hashCode());
        Object $activeList = this.getActiveList();
        result = result * 59 + ($activeList == null ? 43 : $activeList.hashCode());
        Object $planActiveDTO = this.getPlanActiveDTO();
        result = result * 59 + ($planActiveDTO == null ? 43 : $planActiveDTO.hashCode());
        Object $changeType = this.getChangeType();
        result = result * 59 + ($changeType == null ? 43 : $changeType.hashCode());
        Object $securitylabels = this.getSecuritylabels();
        result = result * 59 + ($securitylabels == null ? 43 : $securitylabels.hashCode());
        return result;
    }

    public String toString() {
        return "PlanChangeInfoVO(changeNo=" + this.getChangeNo() + ", isSubmit=" + this.getIsSubmit() + ", planoid=" + this.getPlanoid() + ", planotype=" + this.getPlanotype() + ", refoid=" + this.getRefoid() + ", refotype=" + this.getRefotype() + ", projectoid=" + this.getProjectoid() + ", projectotype=" + this.getProjectotype() + ", description=" + this.getDescription() + ", changeInfoOid=" + this.getChangeInfoOid() + ", status=" + this.getStatus() + ", creatorOid=" + this.getCreatorOid() + ", content=" + this.getContent() + ", activeList=" + this.getActiveList() + ", planActiveDTO=" + this.getPlanActiveDTO() + ", changeType=" + this.getChangeType() + ", securitylabels=" + this.getSecuritylabels() + ")";
    }
}
